package com.zpark.sports.utils;

/**
 * @Author: Abigale
 * @Date: 2022/9/21 17:46
 * @Version: 1.0
 */

import org.springframework.util.DigestUtils;

import java.util.Locale;
import java.util.UUID;
/**
 * 密码加密工具类
 */
public class MD5Utils {

    /**
     * 用户加密方法
     * @param slat 盐值
     * @param oldPwd 源密码
     * @return 加密之后的密码字符串
     */
    // 是工具类，定义成静态的，通过类名来直接调用,返回的
    public static String encryptPassword(String slat, String oldPwd){

        // 加盐处理密码
        String newPwd = newPwd = slat + "@#$%^&*" + slat + oldPwd + "!#$@%^&*" + slat + oldPwd + "@()";

        // 进行加密运算
        for (int i = 0; i < 10; i++) {  // getBytes()： 转成二进制
            newPwd = DigestUtils.md5DigestAsHex(newPwd.getBytes()); // DigestUtils:提供MD5摘要算法的工具
        }

        return newPwd;
    }
    // 测试工具是否可用
    public static void main(String[] args) {
        // 生成盐值
        String slat = UUID.randomUUID() + "";
        System.out.println(slat.toUpperCase());
        String pwd = "123456";
        String s = encryptPassword(slat.toUpperCase(), pwd);
        System.out.println(s);

    }

}